/* 在类的后面加 <T> 就变成了泛型类 */

class GenericNumber<NumberType>{
    defaultValue: NumberType
    add: (x: NumberType, y: NumberType) => NumberType
}
// 这种情况下，推荐指定类型 new GenericNumber<number>()
const myNum = new GenericNumber<number>();

class GenericNumber2<NumberType>{
    defaultValue: NumberType
    add: (x:NumberType, y: NumberType)=> NumberType
    constructor(value:NumberType){
        this.defaultValue = value
    }
}
// 此时新建泛型类时，类型可以省略
const myNum2 = new GenericNumber2(100);